home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / scope / 051-075 / scopedisk59 / jrcomm / jrcomm.doc < prev    next >
Text File  |  1995-03-19  |  41KB  |  1,162 lines

  1. Preliminary documentation for JR-Comm 0.90
  2. ------------------------------------------
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.                             COPYRIGHT NOTICE
  11.  
  12.  
  13. JR-Comm is Copyright (C) 1988, 1989 by John P. Radigan
  14. All Rights Reserved.
  15.  
  16. This document is Copyright (C) 1989 by John P. Radigan
  17. All Rights Reserved.
  18.  
  19.  
  20.  
  21.  
  22.                                Disclaimer
  23.  
  24. No warranty, either express or implied, is made with respect to the
  25. fitness or merchantability of JR-Comm.
  26.  
  27.  
  28.  
  29.  
  30.                             Acknowledgements
  31.  
  32. Thanx Manx, for giving me a nice environment to work with, Aztec 3.6
  33. w/sdb.
  34.  
  35. Gimpel Software for Amiga Lint.
  36.  
  37. Daniel M. Lawrence, MicroEMACS 3.10.
  38.  
  39. Russ Ranshaw for his CompuServe B Plus protocol document.
  40.  
  41. Peter Boswell for his WXMODEM protocol document.
  42.  
  43. Chuck Forsberg for his X/YMODEM and ZMODEM protocol specifications and
  44. for his public domain rz.c, sz.c & zm.c source files, it took a bit of
  45. work figuring out what he did, but it was well worth it!
  46.  
  47. Paul Resch for his BPLUS.C source file, converted from the Pascal source
  48. BPLUS.PAS by Russ Ranshaw.
  49.  
  50. Charlie Heath for getfile.c, didn't use it, but it did show me the
  51. anatomy of how a file requester works.
  52.  
  53. Tony Sumrall & Dave Wecker for the VT100 sources, my basis for learning
  54. how a comm program functions.
  55.  
  56. Mark G. Mendel for his CRC-16 data table.
  57.  
  58. Gary S. Brown for his CRC-32 data table.
  59.  
  60. My trio of faithful beta testers, Jim Burwell, Wayne Hackney and Bruce
  61. Schoenburger. Sorry for that damn guru guys...
  62.  
  63. And lastly, the various commercial and otherwise telecomm programs that
  64. are available for the Amiga, you gave me something to shoot for...
  65.  
  66.  
  67.  
  68.  
  69.                               INTRODUCTION
  70.  
  71.  
  72.  
  73. 1.1  Overview.
  74.  
  75. Welcome to the preliminary release of JR-Comm, a telecommunications
  76. tool for the Amiga series of personal computers.  
  77.  
  78. Present features available:
  79.  
  80.  - XMODEM, XMODEM-1k, WXMODEM, YMODEM, YMODEM-g, ZMODEM, CIS B+ and
  81.    ASCII file transfer protocols are included.  All file transfers
  82.    adhere strictly to the appropriate specifications and provide
  83.    throughput figures exceeding most other communications programs
  84.    available for the Amiga.
  85.  
  86.  - A phonebook that can store an almost limitless number of directory
  87.    entries(dependant on available memory).  Each entry contains all the
  88.    options available to completely re-configure JR-Comm, not just name,
  89.    number and serial port parameters.
  90.  
  91.  - Optionaly generate a unique password for each directory entry.
  92.  
  93.  - An intelligent dialer that monitors the results of each attempt and
  94.    is capable of multiple entry dialing.
  95.  
  96.  - A very powerful file requester that maintains several lists of files,
  97.    devices and directories.  During a batch protocol selection it enables
  98.    you to select files from any number of directories in a simple manner.
  99.  
  100.  - An almost 100% complete IBM ANSI terminal emulation.
  101.  
  102.  - Chat mode with line editing and history.  Review buffer, function key
  103.    macros.  Session capture with filters.  Session log.
  104.  
  105.  
  106.  
  107. 1.2  System requirements.
  108.  
  109. JR-Comm can be run on any Amiga with as little as 512k of system ram.
  110. The 16 color screen mode requires about 300k of ram in order for the
  111. various requesters to be opened.  If you're tight on free memory use the
  112. Workbench or 2 color screen to keep memory requirements below 225k.
  113.  
  114. Although any Hayes compatible modem will work with JR-Comm, some of the
  115. more advanced features of JR-Comm are available if your modem has a
  116. functional carrier detect signal.  An optional method of hanging up the
  117. modem can be used if your modem will disconnect when the DTR signal is
  118. dropped.
  119.  
  120. JR-Comm also supports high-speed modems via CTS/RTS handshaking so that
  121. the increased throughput they are capable of with MNP and fixed data
  122. link speeds between modem and computer can be obtained.  Tests have been
  123. run with a MultiTech 224 EH and US Robotics HST modem to date.
  124.  
  125.  
  126.  
  127. 1.3  Default files and paths.
  128.  
  129. When JR-Comm is first started, it will determine the default path for
  130. certain files that JR-Comm uses for initial settings.  It first trys
  131. to locate the logical directory JRCOMM:, if that is not present it will
  132. set the default path to the S: directory.
  133.  
  134. JR-Comm will then try to locate the following files, if they exist in the
  135. current directory they will overide any that are found in the default path.
  136.  
  137.    jrcomm.def    - User defined default parameters file.
  138.    jrcomm.macros - Function key macros file.
  139.    jrcomm.phones - Phonebook file.
  140.    jrcomm.log    - Session logfile.
  141.  
  142. If the jrcomm.def file isn't located JR-Comm will use an internal set of
  143. default settings for initial operation.
  144.  
  145.  
  146.  
  147. 1.3.1  Filename creation.
  148.  
  149. JR-Comm adds one of five postfixes to a filename after it has been
  150. entered in a string gadget.  These postfixes are:
  151.  
  152.                   .def    - Defaults file.
  153.                   .macros - Macros file.
  154.                   .phones - Phonebook.
  155.                   .log    - Session log.
  156.                   .cap    - Capture file.
  157.  
  158. The appropriate string gadget will be immediately updated, except when
  159. using the file reqester but, the filename will be updated after the file
  160. requester has been closed.  JR-Comm will determine if the filename already
  161. has the proper extension, if it does, it will not append another.
  162.  
  163.  
  164.  
  165. 1.4  The display.
  166.  
  167. The default display used is a borderless Workbench window.  Although not
  168. visible, there is the usual front/back gadget pair in the upper right
  169. corner of the window.
  170.  
  171. Optional displays are borderless windows on a 2, 4, 8 or 16 color custom
  172. screen.  When using a custom screen there are no front/back gadgets
  173. available.  There is a menu item which will puch the JR-Comm custom screen
  174. to the back of the Amiga display when selected.  This item will also move
  175. the Workbench window version of JR-Comm to the back too.
  176.  
  177. The colors used are set to the normal IBM color palette of BLACK, RED,
  178. GREEN, YELLOW, BLUE, MAGENTA, CYAN and WHITE.  The reason a 16 color
  179. screen is available is because of the high-intensity attribute
  180. available for each of the eight colors.  The colors are arranged in an
  181. order that is different from the IBM version, this was done so that an
  182. acceptable color scheme could be used for all of the screens available.
  183.  
  184. The blinking character attribute of the IBM display is rendered as a
  185. bold character in this emulation.
  186.  
  187. An option is provided for the user to select the text and background
  188. colors of the display from the current palette without changing the
  189. palette itself.
  190.  
  191. An ibm.font file is included so that the complete IBM character set can
  192. be used to complete the IBM ANSI emulation.
  193.  
  194. The blinking underline curor is implemented as a screen sprite.  When
  195. the JR-Comm display is pushed to the back the cursor will still be visible
  196. until another window is activated.  The cursor only is visible while the
  197. JR-Comm window is active and no menus are present on the screen.  It is
  198. also turned off when a requester is displayed.
  199.  
  200.  
  201.  
  202. 1.4.1  Display limitations.
  203.  
  204. At rates above 2400 baud you may experience "lost" data with the 16
  205. color screen display.  This screen uses a substantial amount of cpu time
  206. and leaves little for the 68000 to keep up with continuous streams of
  207. incoming data.
  208.  
  209.  
  210.     
  211.                             GETTING STARTED
  212.  
  213.  
  214.  
  215. 2.1  First time users.
  216.  
  217. Prior to running JR-Comm for the first time you must install the IBM
  218. character font.  First create a directory labled "ibm" in your FONTS:
  219. directory with the following command at the CLI.
  220.  
  221.                            makedir FONTS:ibm
  222.  
  223. Next, place the two font files from the JR-Comm archive file in the
  224. FONTS: directory with these following commands.
  225.  
  226.                            copy ibm.font FONTS:
  227.                            copy 8 FONTS:ibm
  228.  
  229. If you wish to assign JRCOMM: to a specific directory you should modify
  230. your Startup-sequence file located in the S: directory by adding the
  231. following command.  If you do not wish to re-boot your machine before
  232. running JR-Comm you should also enter this command from the CLI at this
  233. time. 
  234.  
  235.                            assign JRCOMM: "pathname"
  236.  
  237. Replace "pathname" with the directory name you are going to use.  Floppy
  238. disk based users may wish to label a formatted disk with "JRCOMM" to
  239. achieve the same result.  The command to do this would be.
  240.  
  241.                            label drive df0: name "JRCOMM"
  242.  
  243. DF0: was only used as an example, you may want to do this from a
  244. different drive.  Also, notice that the ':' character was not used in
  245. the name "JRCOMM".
  246.  
  247.  
  248.  
  249. 2.2  Initial startup meassages.
  250.  
  251. After JR-Comm starts up it will display a copyright notice and some
  252. system information about what it is using for parameters.  If no
  253. carrier detect signal was present it will also send a standard Hayes
  254. compatible initialization string to the modem.  A blinking underline
  255. cursor will then indicate that JR-Comm is now ready for operation.
  256.  
  257.  
  258.  
  259. 2.3  The status line.
  260.  
  261. The 25th line of the display defaults as a status line.  At the extreme
  262. right is a time-of-day clock. In 12 hour format it has a blinking colon
  263. indicating seconds and an am/pm indicator.
  264.  
  265. To the immediate left of the time-of-day clock is a connect timer which
  266. will begin counting once the carrier detect signal goes high after the
  267. modem connects to a remote system.  If the timer is counting when not
  268. connected please read the following section about setting your modem.
  269.  
  270. To the left of the connect timer is a list of current settings for
  271. transfer protocol and serial port settings.  See below for what each
  272. character refers to.
  273.  
  274.                            X FN 8N1 2400
  275.                            | || |||  |
  276.                            | || |||  +----- Baud rate
  277.                            | || ||+-------- Stop bits
  278.                            | || |+--------- Parity
  279.                            | || +---------- Data bits
  280.                            | |+------------ Handshake
  281.                            | +------------- Duplex
  282.                            +--------------- Protocol
  283.  
  284. The left portion of the status line is used to display the filename of
  285. where data is currently being captured to or, which file is being used
  286. for the ASCII send function.  It is also used while the chat mode is
  287. active, please see the chat mode section for more detailed information.
  288.  
  289.  
  290.  
  291. 2.4  Modem setup.
  292.  
  293. If your modem has the carrier detect signal permanently asserted it
  294. will make the connect timer start counting immediately after JR-Comm is
  295. started.  If it is possible to set your modem to make carrier detect
  296. function normally you should do so now.  Most Hayes compatible 2400 bps
  297. modems can use the following command to set modem so that the carrier
  298. detect signal functions normally, it then writes the modem parameters
  299. to non-volatile ram so that it will remain that way.
  300.  
  301.                            AT&C1&W
  302.  
  303. Please check your user manual for the modem to insure that this command
  304. will work, you may find that a switch may have to be changed instead of,
  305. or in addition to, the above command.
  306.  
  307. If you cannot turn off the carrier detect signal you should deactivate
  308. JR-Comm from sensing it by turning the ignore button on in the modem
  309. requester.
  310.  
  311.  
  312. 2.4.1  MNP modems.
  313.  
  314. In order to use an MNP modem properly for maximizing the throughput they
  315. are capable of delivering, you need to set JR-Comm and the modem to a
  316. fixed baud rate that is usually 2 to 4 times greater than the connection
  317. rate between the two modems.
  318.  
  319. Since the Amiga is sending data at a rate higher than the modem can send
  320. down the phone line some sort of handshaking must be used so that the
  321. internal buffer inside the modem does not overflow.  Most often, the
  322. kind of handshaking used is hardware, or CTS/RTS handshaking.
  323.  
  324. The serial device the Amiga uses has an oddity in that it requires the
  325. DSR signal to be active when it is first opened, or it won't set CTS/RTS
  326. handshaking active.  the trouble is that most MNP modems default to have
  327. the DSR signal follow the carrier detect signal.  Fortunately, they almost
  328. always have a command and/or switch to permanently set DSR active. 
  329. Please set your MNP modem to keep DSR high if you intend to use CTS/RTS
  330. handshaking.
  331.  
  332.  
  333.  
  334.  
  335.                        THE JR-COMM FILE REQUESTER
  336.  
  337.  
  338.  
  339. 3.1  YAFR...
  340.  
  341. Yes, Another File Requester... Why?
  342.  
  343. Well simply put, it was needed for one reason, selecting multiple
  344. files for batch transfers. But, the big difference here is that this
  345. requester gives you the ability to select files from multiple
  346. directories and/or volumes too!
  347.  
  348.  
  349.  
  350. 3.2 Functional description.
  351.  
  352. The file requester opens up in one of two modes as indicated in the
  353. title.  One mode is a "SINGLE FILE REQUEST", which will allow you to
  354. select only one file at a time.  The other mode is the "BATCH FILE
  355. REQUEST", which allows you to select any number of files.
  356.  
  357. The requester also creates five seperate lists that you can look at to
  358. select files or change directories with.  The rectangle in the upper
  359. left corner labled as "Display:" shows which one of the five lists is
  360. currently being displayed.  The five lists are:
  361.  
  362.   Files       - The files of the current directory, selected files will
  363.                 be displayed in inverse video.
  364.  
  365.   Devices     - The list of devices available to AmigaDOS.
  366.  
  367.   Directories - Logical, or assigned directories.
  368.  
  369.   Volumes     - Floppy and hard disk volume names.
  370.  
  371.   Selected    - The current list of user selected files.  Files selected
  372.                 by the mouse when this list is displayed will be removed
  373.                 from the selection list.
  374.  
  375. The "PARENT" gadget will change the current directory to the parent
  376. directory.  The current directory is displayed in the string gadget
  377. immediately below, which is labled "Drawer:",  it will also change
  378. the current directory if a pathname is entered in it.
  379.  
  380. The large rectangle is the familiar Amiga-like file selection array, it
  381. can display up to 15 files and/or directories at a time.  Directories
  382. will be prefixed with a "(dir)" string to indicate that it is the name
  383. of a directory not a file.  The righthand side of the rectangle shows
  384. the size in bytes of each file.
  385.  
  386. Below the selection rectangle there are two size indicators.  The one on
  387. the left, labeled as "Free:", shows the amount of free space left on the
  388. current device that the current directory is apart of.  The right side
  389. shows the total number of bytes bytes for all of the files that have
  390. been selected.
  391.  
  392. To the left of the selection rectangle is the proportional scroll gadget
  393. which enables the user to scroll through a list of filenames.  The
  394. "knob", or smaller rectangle inside the scroll gadget is sized to
  395. indicate how much of the list is displayed by the selection rectangle at
  396. any one time.
  397.  
  398. The next gadget down is the string gadget labled "File:", depending on
  399. the function that opened the requester, it can already contain a
  400. filename for possible selection by the user.
  401.  
  402. The last two gadgets are the "OK" and "CANCEL" gadgets.  The "OK" gadget
  403. will return to the calling function with a list of the selected files or
  404. the oen filename is it was opened as a "SINGLE FILE REQUEST".  The
  405. "CANCEL" gadget will return with a null list indicating no file(s) were
  406. selected. 
  407.  
  408.  
  409.  
  410.                             THE PROJECT MENU
  411.  
  412.  
  413.  
  414. 4.1  Phone directory.
  415.  
  416. The phone directory resembles the file requester as far as the selection
  417. rectangle and scroll gadget, but that is where it ends.
  418.  
  419. The "ADD" gadget will allow you to add a phone directory entry.  The
  420. "EDIT" gadget will let you edit the last entry selected in the
  421. selection rectangle.  The "DELETE" gadget removes an entry, like the
  422. edit feture though, only the last entry that was selected.
  423.  
  424. The directory entry requester has string gadgets for the name, phone
  425. number, optional macros file, optional capture file and password
  426. definitions. 
  427.  
  428. Four button gadgets define which, if any, of the dialing prefixes you
  429. wish to use for dialing.  See the modem requester section for further
  430. information on the dialing prefixes.
  431.  
  432. The "LOAD and "SAVE" gadgets do the expected for the phone directory.
  433.  
  434. The string gadget labled "Master password:" contains the character
  435. string that is used by JR-Comm to generate passwords for each directory
  436. entry if you want one.
  437.  
  438.  
  439.  
  440. 4.1.1  The directory entry requester.
  441.  
  442. The directory entry requester is accessed either by selecting the "ADD"
  443. gadget to create a new entry, or by selecting "EDIT" to edit an existing
  444. directory entry.
  445.  
  446. The Name and Number string gadgets should be filled with the appropriate
  447. information for the desired entry.
  448.  
  449. The Macros and Capture string gadgets are optional, if a filename for
  450. the Macros entry is filled in this allows you to select the "Macros"
  451. gadget in the bottom row to define the function key macros for this
  452. entry.  If the Capture string gadget is filled in then a capture file
  453. will be opened in append mode after the dialer completes a connection
  454. for this entry.  Please see the section on filname creation.
  455.  
  456. Four other buttons are used in conjunction with the string gadget
  457. labled "Length:" to define what type of password you desire.  The
  458. "Length" string gadget instructs JR-Comm how many characters to
  459. generate for the password.  The first button, labled "Fixed" will let
  460. you enter a password in the string gadget which won't be modified by
  461. JR-Comm when you close the requester.  The other three buttons,
  462. "Alpha", "Numeric" and "Alphanumeric" define what type of password will
  463. be generated by JR-Comm when the requester is closed. The generated
  464. password will be placed in the password string gadget and "Fixed"
  465. button will then be set so that the password won't be changed until you
  466. wish to by doing an edit of the directory entry. 
  467.  
  468. The row of gadgets along the bottom allow you to select the various
  469. parameter requesters to tailor the entry for the system you are
  470. entering.
  471.  
  472. The "CANCEL" gadget will either cancel a new directory entry or an edit.
  473.  
  474.  
  475.  
  476. 4.1.2  The phone dialer.
  477.  
  478. JR-Comm is capable of multi-dialing any number of directory entries,
  479. just select the ones you want dialed and then select the "DIAL" gadget
  480. in the phone direcotry.
  481.  
  482. The dialer is controlled by three parameters in the modem requester,
  483. number of retries, dial timeout and redial delay.  The number of
  484. retries defaults to 15 and applies to each entry that is selected when
  485. the dialer is called.  The dial timeout refers to how many seconds the
  486. dialer will wait for a connection after dialing, it defaults to 30
  487. seconds.  The redial delay is also in seconds, defaults to 60 and is
  488. the amount of wait time at the end of the list before restarting again.
  489.  
  490. The dialer has some additional intelligence built-in besides checking
  491. for modem "BUSY" responses.  If three "NO DIALTONE" responses are
  492. received from the modem, the dialer will halt.  It will also remove an
  493. entry from the selected list if a "VOICE" response is received or if
  494. three "NO CARRIER" responses have been received for that entry.
  495.  
  496. When a connection is made the entry is removed from the selected list so
  497. that it will be passed over when the dialer is called again.  If a
  498. macros file was defined for this directory entry it will be loaded.  If
  499. a capture file was defined it will be opened in append mode.  Any other
  500. parameters will be set if required prior to returning to terminal mode.
  501.  
  502.  
  503.  
  504. 4.2  Hangup modem.
  505.  
  506. Will hangup the modem either by sending the hangup command string as
  507. defined in the modem requester or, by dropping the DTR signal to the
  508. modem if the DTR gadget is active in the modem requester.  The default
  509. is to send the hangup command, which is initially set to the Hayes
  510. compatible "~~~+++~~~ATH1^M" string.  See the section on special
  511. character definitions for modem and other commands that are sent out of
  512. the serial port.
  513.  
  514.  
  515.  
  516. 4.3  Modem break.
  517.  
  518. Sends a break signal out the serial port for a length specified by the
  519. gadget in the serial requester.  Default is 250,000 microseconds.
  520.  
  521.  
  522.  
  523. 4.4  Send password.
  524.  
  525. After the dialer has connected to a system, the password in the
  526. directory entry that was connected to will be sent to the modem when
  527. this item is selected.
  528.  
  529.  
  530.  
  531. 4.5  Timer reset.
  532.  
  533. Resets the connect timer located in the status line.
  534.  
  535.  
  536.  
  537. 4.6  Load defaults.
  538.  
  539. Load a default parameters file.  The file requester will be initialized
  540. to the filename which is in the general parameters requester.
  541.  
  542.  
  543.  
  544. 4.7  Write defaults.
  545.  
  546. Writes the currently set parameters to a defaults file.
  547.  
  548.  
  549.  
  550. 4.8  Clear screen.
  551.  
  552. Clears the screen.  The same effect as a <CTRL>-L character or ANSI
  553. sequence of <ESC>[2J.
  554.  
  555.  
  556.  
  557. 4.9  Screen to back.
  558.  
  559. Moves the JR-Comm display to the back so that you can access another window.
  560.  
  561.  
  562. 4.10  About JR-Comm.
  563.  
  564. Posts a little blurb about JR-Comm.
  565.  
  566.  
  567.  
  568. 4.11  Exit.
  569.  
  570. As expected, terminates the current JR-Comm session. Closes any open
  571. files prior to ending.
  572.  
  573.  
  574.  
  575.                               BUFFER MENU
  576.  
  577.  
  578.  
  579. 5.1  Kill buffer
  580.  
  581. Empties the review buffer, this does not affect the capture of data
  582. which is kept in a seperate internal buffer.
  583.  
  584.  
  585.  
  586. 5.2  View Buffer
  587.  
  588. Places JR-Comm in review mode.  If the status line is enabled it will
  589. display a message indicating the review mode is active.  When the review
  590. first starts it will fill the screen with the most recent data received.
  591. The review buffer is controlled by the following key sequences.
  592.  
  593.          <ctrl><up> - move to the beginning of the buffer.
  594.         <shift><up> - move up 24 lines.
  595.                <up> - move up one line.
  596.  
  597.        <ctrl><down> - move to the end of the buffer.
  598.       <shift><down> - move down 24 lines.
  599.              <down> - move down one line.
  600.  
  601.               <esc> - end review mode, return to the terminal.
  602.  
  603.  
  604.  
  605. 5.3  Open capture
  606.  
  607. Opens a file for data capture.  Any data currently in the review buffer
  608. will be immediately transfered to the capture file.  Further data is
  609. seperately buffered in an internal 2k buffer.  See the section on
  610. terminal parameters for the capture filters that are available.
  611.  
  612.  
  613.  
  614. 5.4  Close capture
  615.  
  616. Closes the capture file after writing any unsaved data.  When a JR-Comm
  617. session is ended the capture file will be closed if currently open.
  618.  
  619.  
  620.  
  621. 5.5  Append capture
  622.  
  623. Append data to an existing file.  The operation will also save the
  624. current contents of the review buffer to the appended file the same as
  625. an open capture operation mentioned above.  The most recently used
  626. capture filename will be placed in the filename string gadget of the
  627. file requester when it is first opened.
  628.  
  629.  
  630.  
  631.                             TRANSFERS MENU 
  632.  
  633.  
  634.  
  635. 6.1  Parameters requester.
  636.  
  637. This requester contains all the options available for the file transfers
  638. available in JR-Comm.
  639.  
  640.  
  641.  
  642. 6.1.1  Protocols.
  643.  
  644. All the file transfer protocols in use by JR-Comm strictly adhere to the
  645. specifications outlined in the various documents that are available for
  646. each protocol.  The following is a short description of the protocols
  647. available.
  648.  
  649.     CIS B+ - CompuServe's B+ file transfer protocol.
  650.  
  651.    WXMODEM - A variant of the XMODEM protocol which give better
  652.              throughput perfomance over packet switched networks. This
  653.              protocol is quite popular on the PeopleLink information
  654.              service. 
  655.  
  656.     XMODEM - The original XMODEM checksum protocol was created by Ward
  657.              Christensen back in 1977.  Since then it has been modified
  658.              for better error correction by using an optional 16 bit CRC
  659.              polynomial.  JR-Comm will automatically attempt the CRC
  660.              type transfer first and "step down" to the original
  661.              checksum version if it's not recognized.
  662.  
  663.  XMODEM-1k - Another variation of XMODEM, this one uses 1,024 byte
  664.              packets which gives higher throughput than the original
  665.              XMODEM protocol.
  666.  
  667.     YMODEM - This is TRUE YMODEM, which is a batch transfer protocol.
  668.              The filename, date and file size are transfered in a
  669.              seperate header block at the beginning of each file
  670.              that is transfered.  This protocol also preserves the
  671.              correct file size, the other XMODEM protocols above pad
  672.              characters at the end of the file.
  673.  
  674.   YMODEM-g - This variation of YMODEM is intended for error correcting
  675.              modems, like those that use MNP error correction. Because
  676.              this protocol does no error checking the file is transfered
  677.              with little delay and can achieve some of the highest
  678.              throughput of any of the protocols listed here.
  679.  
  680.     ZMODEM - This is one of the newest and most powerful protocols
  681.              available.  It is capable of batch transfers, automatically
  682.              initiated downloads, 32 bit CRC error checking, and a
  683.              unique ability to resume a transfer that had been partially
  684.              completed.  JR-Comm supports one of the most complete
  685.              implementations of the ZMODEM protocol as defined by the
  686.              specification document written by ZMODEM's author, Chuck
  687.              Forsberg. 
  688.  
  689.  
  690.  
  691. 6.1.2  Miscellaneous parameters.
  692.  
  693.    Save aborted - Determines if a file is saved or deleted if the
  694.                   transfer is aborted.
  695.  
  696.  Relaxed timing - Set this gadget if a file transfer fails or gets an
  697.                   excessive number of timeouts.  Useful for packet
  698.                   switched networks.
  699.  
  700.       Auto chop - WXMODEM, XMODEM & XMODEM-k pad data to the last block
  701.                   of a file transfer.  This feature will attempt to
  702.                   remove this data from a binary file only.  
  703.  
  704.      GMT offset - This numeric string gadget contains the positive or
  705.                   negative offset of local time to Greenwich Mean Time.
  706.                   Eastern Standard Time would be expressed with the
  707.                   value -5.  This is used in YMODEM and ZMODEM transfers
  708.                   so that the true file date can be preserved.
  709.  
  710.  
  711.  
  712. 6.1.3  ASCII send parameters.
  713.  
  714.    Expand blanks - If this gadget is selected then any lines in the
  715.                    ASCII file which are completely blank will have a blank
  716.                    character sent prior to sending the newline character.
  717.                    Some online text editors will stop accepting input if
  718.                    a newline is entered by itself, this option prevents 
  719.                    that from occuring.
  720.  
  721.      Prompt char - Instructs JR-Comm to wait after transmitting a line
  722.                    of text for a specific character before sending the
  723.                    next line.
  724.            
  725.       Char delay - A numeric value describing hundredths of seconds to wait
  726.                    between sending characters.
  727.  
  728.       Line delay - Like char delay above, tenths of seconds to wait
  729.                    between sending lines of text.
  730.  
  731.  
  732.  
  733. 6.1.4  Transfer mode.
  734.  
  735. Determines if a file transfer will be done as pure binary without any
  736. end-of-line conversions or, in text mode, and end-of-line conversion 
  737. will be processed as per the settings in the terminal requester for
  738. end-of-line in and out.
  739.  
  740.  
  741.  
  742. 6.1.5  ZMODEM options.
  743.  
  744.       Resume transfer - If the requested file already exists JR-Comm
  745.                         will attempt to resume the file transfer. A
  746.                         check is made between JR-Comm and the remote
  747.                         system that the file to be resumed is shorter.
  748.                         If the file is not shorter the transfer will be
  749.                         aborted.
  750.  
  751.         Auto download - When this gadget is active it allows JR-Comm to
  752.                         start a ZMODEM download automatically.
  753.  
  754.    Auto d/l challenge - This feature, when selected, instructs JR-Comm
  755.                         to perform a challenge to the remote system so
  756.                         that it can determine if the remote really
  757.                         intended an automatic download to start.  This
  758.                         gadget is activated at the same time the auto
  759.                         download gadget is selected, but may be
  760.                         independantly de-selected in case a certain
  761.                         remote system does not support the challenge
  762.                         option.
  763.  
  764.     Escape ctrl chars - Instructs JR-Comm to do an escape of certain
  765.                         control characters that can interfere with the
  766.                         operation of packet-switched networks.
  767.  
  768.            32 bit CRC - Use the newer 32 bit CRC mode of error detection
  769.                         first, drops down to 16 bit version if the
  770.                         remote does not support it.
  771.  
  772.  
  773.  
  774. 6.1.6  ZMODEM send modes.
  775.  
  776. The following modes are applicable to a ZMODEM upload from JR-Comm only.
  777. They have no effect on a download, regardless of protocol used.
  778.  
  779.         Newer/longer - Transfer if the file is newer, longer or not
  780.                        present.
  781.  
  782.        CRC different - Transfer if file has a different CRC or is not
  783.                        present.
  784.  
  785.         Append files - Append data only if remote file is shorter than
  786.                        the file locally.  If the file is not present,
  787.                        create it.
  788.  
  789.      Overwrite files - Overwrite any files that are present.  Also
  790.                        called "clobber" mode.
  791.  
  792.    Protect all files - Protect all files unconditionally.
  793.  
  794.  
  795.  
  796. 6.2  Upload file.
  797.  
  798. Opens the file requester for selection of file(s) to be uploaded.  The
  799. terminal can still be accessed to converse with the remote system while
  800. the requester is open.  Pressing the "CANCEL" gadget will abort the
  801. upload attempt.
  802.  
  803. The status window displays the progress of the transfer and estimated
  804. time to complete the transfer.  The close window gadget will abort the
  805. transfer unconditionally.  There may be a short time lag from when the
  806. gadget is selected to when the window closes and getting returned to
  807. the terminal mode of JR-Comm.  This is due to JR-Comm attempting to
  808. flush the data stream of any left over data that may have been in
  809. transit during the transfer.
  810.  
  811.  
  812.  
  813. 6.3  Download file.
  814.  
  815. Same operation as with uploads mentioned above.  YMODEM and ZMODEM do
  816. not prompt for filenames since they are sent from the remote system
  817. during the transfer.
  818.  
  819.  
  820.  
  821. 6.4  ASCII send.
  822.  
  823. Opens the file gadget for selection of a file to do an ASCII send of. 
  824. The status line if present will display the filename while it is opened
  825. for transfer.  This is indicated by the filename prefixed by the '<'
  826. character.
  827.  
  828.  
  829.  
  830.                               OPTIONS MENU
  831.  
  832.  
  833.  
  834. 7.1  Serial parameters.
  835.  
  836. In addition to the standard settings for baud, parity, data and stop
  837. bits, you have gadgets that allow you to set handshake method and duplex
  838. type.  There is also a string gadget that lets you set the amount of
  839. time, in microseconds, a break signal will last.
  840.  
  841.  
  842.  
  843. 7.1.1  Handshaking.
  844.  
  845. The four types of handshaking, or flow control, are:
  846.  
  847.    XON/XOFF - Uses the XON and XOFF characters for flow control.
  848.  
  849.     CTS/RTS - Also known as hardware flow control, used mostly with high
  850.               speed and/or MNP modems that lock the baud rate between
  851.               computer and modem at a rate higher than the connect speed.
  852.  
  853.        Both - Use both XON/XOFF and CTS/RTS flow control together.
  854.  
  855.        None - Don't use any flow control.
  856.  
  857.  
  858.  
  859. 7.1.2  Duplex modes.
  860.  
  861. JR-Comm has three type of duplexing available, they are:
  862.  
  863.    Full - Used when the remote system echos a character it receives.
  864.  
  865.    Half - When a key is pressed it is displayed locally as well as sent
  866.           out the serial port.  If the remote system were to echo the
  867.           character you will see two of each character when a key is
  868.           pressed.
  869.  
  870.    Echo - Will echo a character it receives back out to the serial port,
  871.           also displays the character received.  
  872.  
  873.  
  874.  
  875. 7.2  Modem parameters.
  876.  
  877. This requester contains all the necessary items for setting how
  878. JR-Comm's phone dialer will interact with the modem.  All strings
  879. default to standard Hayes compatible modem commands and responses.  
  880.  
  881.  
  882.  
  883. 7.2.1  Modem commands:
  884.  
  885.            Init - Sent to the modem when JR-Comm is first started, but
  886.                   only if a carrier signal is not present.
  887.  
  888.          Hangup - Used to hangup the modem if the DTR gadget is not
  889.                   active.  The '~' character represents a one-half
  890.                   second delay.
  891.  
  892.     Dial prefix - The charcter string used to prefix a modem dial
  893.                   command.
  894.  
  895.    Dial postfix - The charcter sequence used to terminate a dial
  896.                   command.
  897.  
  898.  
  899.  
  900. 7.2.2  Alternate dial prefixes.
  901.  
  902. JR-Comm provides you with three alternate dialing prefixes that will be
  903. prefixed the the phone number of a phone directory entry.  To use a
  904. prefix set the appropriate gadget in the phone directory entry
  905. requester.
  906.  
  907.  
  908.  
  909. 7.2.3  Response codes.
  910.  
  911. The eight response codes and their Hayes defaults are:
  912.  
  913.             OK - "OK", The usual modem response to a command.
  914.           Busy - "BUSY", sent when a busy signal is detected.
  915.           Ring - "RING", sent when the modem detects a ring signal.
  916.          Error - "ERROR", sent when the modem detects an error.
  917.          Voice - "VOICE", not all modems are capable of sending this.
  918.        Connect - "CONNECT", the modem has connected to another modem.
  919.     No carrier - "NO CARRIER", the remote system did not respond.
  920.    No dialtone - "NO DIALTONE", sent if no dialtone signal was present.
  921.  
  922.  
  923.  
  924. 7.2.4  Phone dialer parameters.
  925.  
  926. Three parameters are used to control the phone dialer in JR-Comm, they
  927. are:
  928.  
  929.    Redial delay - Indicates how many seconds JR-Comm will wait before
  930.                   re-starting the list of selected entries.
  931.  
  932.    # of retries - How many times JR-Comm will loop through the list of
  933.                   selected entries before returning to the terminal.
  934.  
  935.    Dial timeout - How many seconds JR-Comm will wait for a connection
  936.                   after sending the dial command to the modem.
  937.  
  938.  
  939.  
  940. 7.2.5  Miscellaneous parameters.
  941.  
  942. There are two button gadgets that indicate if JR-Comm will use the DTR
  943. signal to hangup the modem, and if JR-Comm should ignore the state of
  944. the carrier detect signal.  If this last gadget is set to ignore the
  945. carrier detect signal then the phone dialer will search for the connect
  946. string instead of the carrier detect for a connection, it will also turn
  947. off the connect timer in the status line if it is displayed.
  948.  
  949.  
  950.  
  951. 7.3  Terminal parameters.
  952.  
  953. This requester deals with how JR-Comm's terminal mode will be operated. 
  954. there are options for capture filters, screen type, end-of-line in and
  955. out conversion types and if chat mode is active.
  956.  
  957.  
  958.  
  959.  
  960. 7.3.1  Capture filters.
  961.  
  962. These filters affect the review buffer and capture file, if open.  The
  963. filters currently available are:
  964.  
  965.    Graphics chars - Use this option if you want the high bit of each
  966.                     character reset that is received when using 8 data
  967.                     bits, no parity.
  968.  
  969.        ANSI codes - Turn this filter on if you do not want ANSI screen
  970.                     control codes captured.  The codes will still affect
  971.                     the screen though.
  972.  
  973.        CTRL chars - Removes all control characters except for carrige
  974.                     returns, line feeds, form feeds, tabs and
  975.                     backspaces.
  976.  
  977.        Backspaces - If this filter is active then any backspace received
  978.                     will remove the previous character recieved from the
  979.                     capture file too.  This results in the capture function
  980.                     operating in the same manner as the display.
  981.  
  982.  
  983.  
  984. 7.3.2  Chat mode.
  985.  
  986. Jr-Comm's chat mode is activated when this button gadget is selected. 
  987. Chat mode is indicated by the solid square cursor on the last line of
  988. the display.  If the connect timer and/or time-of-day clock is also
  989. active when chat mode is activated then the maximum size of each chat
  990. line is 60 characters.  If either or both timer and clock are turned off
  991. or if the status line was not active when chat mode is activated, then
  992. the chat line size will be modified to 70 or 80 characters in length.
  993.  
  994. The chat line will automatically word wrap when the end of the line is
  995. reached while typing so that you do not have to worry about going over
  996. the maximum size of the chat line.  This maximum length will be 80, 70
  997. or 60, as described above if the connect timer and/or clock is also
  998. displayed.
  999.  
  1000. Line editing is available while in the chat mode.  The left and right
  1001. cursor keys move through the current line.  The delete key has two
  1002. functions, alone it deletes the character underneath the cursor, when
  1003. pressed while the shift key is down it will insert a blank at the
  1004. current cursor position.  The backspace key works as expected.  If the
  1005. return key is pressed while in the middle of the chat line the complete
  1006. line will be transmitted to the modem.
  1007.  
  1008. The chat mode also has a history buffer which can be accessed via the up
  1009. and down cursor keys.  The default size of 50 lines is used unless you
  1010. have increased or decreased it.  Each line is set to a maximum of 80
  1011. charcters so that full editing can be utilized on each string.
  1012.  
  1013. Finally, the '^' character can be used to send control characters out
  1014. via the chat line.  Two '^' characters in a row will send the '^'
  1015. character itself.
  1016.  
  1017.  
  1018.  
  1019. 7.3.3  EOL in & out conversion.
  1020.  
  1021. Selects which type of end-of-line sequence will be sent when the return
  1022. key is pressed or, when ASCII send is active, a newline character is
  1023. sent.  The default out is a carrige return.  When an end-of-line
  1024. sequence is received it will be converted to the selected sequence,
  1025. usually a linefeed character, also called a newline character.
  1026.  
  1027.  
  1028.  
  1029. 7.3.4  Screen type.
  1030.  
  1031. Selects the type of screen JR-Comm will use.  The default makes JR-Comm
  1032. use the Workbench screen.  The other selections are for two, four, eight
  1033. or 16 color screens.  The 16 color screen will give you the full ANSI
  1034. color emulation as defined by the IBM ANSI screen.
  1035.  
  1036.  
  1037.  
  1038. 7.3.5  Text and background colors.
  1039.  
  1040. Enter the color number you wish to use for text and background color for
  1041. a multi-color display.  See the palette for the colors and their
  1042. numbers.
  1043.  
  1044.  
  1045.  
  1046. 7.4  Macros requester.
  1047.  
  1048. The macros requester lets you define up to 20 different macro strings
  1049. that will be output to the serial port when the appropriate function key
  1050. is pressed.  The shift key gives you the second set of 10 macros, the
  1051. unshifted function keys access the first 10 macros.
  1052.  
  1053. The display buttons indicate which set of macros is currently being
  1054. displayed.
  1055.  
  1056. The '~' character will make JR-Comm pause for one-half second while
  1057. processing a macro.  The '^' character is used for sending control
  1058. chracters, the sequence "^M" will send a carrige return, the equivalent
  1059. of pressing the return key.
  1060.  
  1061. The "LOAD" and "SAVE" gadgets will take you to the file requester so
  1062. that you can save or load a set of function key macros.
  1063.  
  1064.  
  1065.  
  1066. 7.5  Palette requetser.
  1067.  
  1068. Works like most any color palette requester found in other Amiga
  1069. applications.  The "RESET" gadget will reset the colors to the default
  1070. IBM ANSI color set.
  1071.  
  1072. If you are familiar with the IBM color palette you will notice that the
  1073. colors do not follow normal IBM ordering.  This was necessary so that
  1074. the colors JR-Comm uses for string gadgets and requester borders/titles
  1075. would be visible and "clean" in appearence throughout the different
  1076. screen types it uses.
  1077.  
  1078.  
  1079.  
  1080. 7.6  General parameters.
  1081.  
  1082. The parameters in this requester deal with the status line, review buffer
  1083. and chat history sizes, pathnames and filenames.
  1084.  
  1085.  
  1086.  
  1087. 7.6.1  The status line.
  1088.  
  1089. Three button gadgets control the status line, they are:
  1090.  
  1091.    Status line displayed - Self explanatory.
  1092.  
  1093.        Time of day clock - Determines if the time-of-day is displayed.
  1094.  
  1095.            On-line timer - Same goes for the connect timer.
  1096.  
  1097.             24 hour mode - Selects either 12 or 24 hour mode.
  1098.  
  1099.  
  1100.  
  1101. 7.6.2  Size settings.
  1102.  
  1103. The review buffer size is indicated in bytes and defaults to 16,000. The
  1104. chat history size indicates lines and defaults to 50.
  1105.  
  1106.  
  1107.  
  1108. 7.6.3  Pathnames.
  1109.  
  1110. Set these string gadgets for JR-Comm to look for or place files for
  1111. uploading and downloading.  The files path is used by JR-Comm to locate
  1112. or put phonebook, macros, definition files and the session log.  
  1113.  
  1114. If during the operation of JR-Comm, you change directories in the file
  1115. requester, that new pathname will be placed in the appropriate pathname
  1116. string discussed here.
  1117.  
  1118.  
  1119.  
  1120. 7.6.4  Filenames.
  1121.  
  1122. Displays the current filenames in use for the phonebook, macro, logfile
  1123. and capture files.
  1124.  
  1125.  
  1126.  
  1127. 7.6.5  Logfile.
  1128.  
  1129. The logfile records the following actions:
  1130.  
  1131.  -  JR-Comm session start and end.
  1132.  -  Connection to a system via the dialer.
  1133.  -  Modem hangup command.
  1134.  -  Carrier drop if the ignore carrier detect button in the modem requester
  1135.     is not active.
  1136.  -  Successful downloads with file size, total error count and cps rate.
  1137.  
  1138. If no logfile filename is present in the general parameters requester, no
  1139. actions will be logged.
  1140.  
  1141.  
  1142.  
  1143.                             JR-COMM SUPPORT
  1144.  
  1145.  
  1146. 8.1
  1147.  
  1148. Support for JR-Comm will be available by contacting the Atlantic County
  1149. Amiga BBS, (609)625-2453.  It is an open system available to anyone 24
  1150. hours per day, seven days per week.  Access of 3/12/24 & 9600 HST is
  1151. supported.
  1152.  
  1153. If you are calling with a problem about JR-Comm please be specific and
  1154. post your request in a public message.  This will help future callers
  1155. who may find the information they're searching for by reading previously
  1156. posted messages.
  1157.  
  1158. The most current release of JR-Comm will always be available on the BBS.
  1159. Likewise, there will be new versions simultaneously posted on
  1160. CompuServe, People Link and GEnie.  Requests for help will sporadically,
  1161. if at all, be responded to on these services, please call the BBS instead.
  1162.